gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Propagate
authorMatthias Clasen <matthiasc@src.gnome.org>
Thu, 30 Aug 2001 07:23:32 +0000 (07:23 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Thu, 30 Aug 2001 07:23:32 +0000 (07:23 +0000)
errors from gdk_pixbuf_loader_load_module.

gdk-pixbuf/ChangeLog
gdk-pixbuf/gdk-pixbuf-loader.c

index 0b0a71e0c445a87a7711ffbf85269d4828396b1b..5c1fc08b3b4a4f4d85650bae3f442e3fe3c1f650 100644 (file)
@@ -1,3 +1,8 @@
+Thu Aug 30 08:30:03 2001  Matthias Clasen  <matthiasc@poet.de>
+
+       * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Propagate
+       errors from gdk_pixbuf_loader_load_module.
+
 Thu Aug 30 08:27:37 2001  Matthias Clasen  <matthiasc@poet.de>
 
        * io-png.c (png_row_callback): Check that row_num is valid.
index 77c8ea88907c5f751d610a834b243dc0781fe4f1..0149357b24a886e3e313badf0bad6720c8b3001f 100644 (file)
@@ -529,9 +529,16 @@ gdk_pixbuf_loader_close (GdkPixbufLoader *loader,
   
   /* We have less the 128 bytes in the image.  Flush it, and keep going. */
   if (priv->image_module == NULL)
-    gdk_pixbuf_loader_load_module (loader, NULL, NULL);
-  
-  if (priv->image_module && priv->image_module->stop_load && priv->context)
+    {
+      GError *tmp = NULL;
+      gdk_pixbuf_loader_load_module (loader, NULL, &tmp);
+      if (tmp != NULL)
+       {
+         g_propagate_error (error, tmp);
+         retval = FALSE;
+       }
+    }  
+  if (retval && priv->image_module && priv->image_module->stop_load && priv->context)
     retval = priv->image_module->stop_load (priv->context, error);
   
   priv->closed = TRUE;
@@ -540,3 +547,5 @@ gdk_pixbuf_loader_close (GdkPixbufLoader *loader,
 
   return retval;
 }
+
+